Page({
  data: {
    name: '', // 访客姓名
    gender: 0, // 访客性别
    houseId: '', // 访问房屋ID
    mobile: '', // 访问者手机号
    visitDate: '', // 访问时间
    currentDate: Date.now(),
    dateLayerVisible: false,
    houseLayerVisible: false,
    houseList: [
      // { name: '北京西三旗花园1号楼 101' },
      // { name: '北京东村家园3号楼 302' },
      // { name: '北京育新花园3号楼 703' },
      // { name: '北京天通苑北苑8号楼 403' },
    ],
  },
  onLoad() {
    this.getHouseList()
  },
  async getHouseList() {
    // 请求数据接口
    const { data: houseList } = await wx.http.get('/house')
    // 数据渲染
    this.setData({ houseList })
  },
  // 选择去谁家
  selectHouse(e) {
    const { name: houseInfo, id } = e.detail
    this.setData({
      houseInfo,
      houseId: id
    })
  },
  // 选择串门时间
  selectTime(e) {
    this.setData({
      dateLayerVisible: false, // 关闭选择时间弹层
      // appointTime: wx.utils.formatTime(e.detail)
      visitDate: wx.utils.formatTime(e.detail)

    })
  },
  openHouseLayer() {
    this.setData({ houseLayerVisible: true })
  },
  closeHouseLayer() {
    this.setData({ houseLayerVisible: false })
  },
  openDateLayer() {
    this.setData({ dateLayerVisible: true })
  },
  closeDateLayer() {
    this.setData({ dateLayerVisible: false })
  },
  async goPassport() {
    // 1. 校验数据格式
    const { name, mobile, houseId, gender, visitDate } = this.data
    if (!houseId) return wx.utils.toast('请选择房屋信息！')
    if (!/^[\u4e00-\u9fa5]{2,5}$/.test(name)) return wx.utils.toast('请填写中文姓名!')
    if (!/^[1][3-8][0-9]{9}$/.test(mobile)) return wx.utils.toast('请填写正确的手机号码!')
    if (!visitDate) return wx.utils.toast('请选择访问日期！')
    // 2. 调用接口提交串门记录
    try {
      // 1. 新增访客记录
      const { data } = await wx.http.post('/visitor', { name, mobile, houseId, gender, visitDate })
      //  2. 跳转访客通行证页面=》携带访客记录ID
      wx.navigateTo({
        url: `/visitor_pkg/pages/passport/index?id=${data.id}`,
      })
    } catch (error) {
      wx.utils.toast('新增访客记录失败！')
    }



  },
})